%s/\s\+$//e
7
normal gqap
%s/Copyright 2007 Chandler Carruth/Copyright 2007, 2008 Chandler Carruth/e
%s/^#\(include\|ifn\?def\|define\)\s\+/#\1 /e
%s:^//  System Headers\n\(#include.*\n\+\)*::e
%s:^//  Library Headers\n\(#include.*\n\+\)*::e
%s:^//  Project Headers\n\(#include.*\n\+\)\+:\1\r#include <string>\r\r#include <boost/scoped_ptr.hpp>\r\r\2\rnamespace inc {\rnamespace parser {\r\rusing std\:\:string;\rusing boost\:\:scoped_ptr;\r\r:
global/^\n\zs\/\/\/$/+1delete
global/^\/\/\/\n$/delete
%s:^\(/// \\\(brief\|file\|author\|date\)\)\s\+:\1 :e
%s:^\(/// \\param\[\(in\|out\)\]\)\s+\(\w\+\)\s\+:\1 \2 :e
%s:^\(///.*\n\)\+\n\+bool\n\w\+\:\:create(\_[^)]*)\n{\n\(\n\|[^}].*\n\)*}$::
%s:^\(///.*\n\)\+\n\+bool\n\w\+\:\:destroy(\_[^)]*)\n{\n\(\n\|[^}].*\n\)*}$::
%s:^\(///.*\n\)\+\n\+bool\n\(\w\+\)\:\:init(\_[^)]*)\n{\n\(\n\|[^}].*\n\)*}$:/// \\brief Basic constructor for _\r/// \\author Chandler Carruth\r/// \\date 2008.10.04\r\r\2\:\:\2()\r    \: _()\r{}:
%s:^\(///.*\n\)\+\n\+bool\n\(\w\+\)\:\:deinit(\_[^)]*)\n{\n\(\n\|[^}].*\n\)*}$:/// \\brief Empty destructor, all members are smart pointers\r/// \\author Chandler Carruth\r/// \\date 2008.10.04\r\r\2\:\:\~\2()\r{}\r\r/// \\brief Parse a _ in INC\r/// \\author Chandler Carruth\r/// \\date 2008.10.04\r///\r/// TODO(chandlerc)\: Describe this.\r\rbool\r\2\:\:parse( const iterator \&first, const iterator \&last, iterator \&last_parsed )\r{\r  assert( ...\r          \&\& "This node was parsed more than once!" );\r\r  //  TODO(chandlerc)\: Implement this.\r\r  //  No valid parse found.\r  last_parsed = first;\r  return false;\r}\r\r} //  end parser namespace\r} //  end inc namespace\r:
%s/\w\+\(Node\|Parser\)/\u&/g
%s/^\n$//e
global/^\%$/delete

